home *** CD-ROM | disk | FTP | other *** search
/ Visual Cafe 3 / Visual Cafe 3.ISO / Vcafe / Main.bin / LayoutManager.java < prev    next >
Text File  |  1998-09-22  |  2KB  |  63 lines

  1. /*
  2.  * @(#)LayoutManager.java    1.15 98/07/01
  3.  *
  4.  * Copyright 1995-1998 by Sun Microsystems, Inc.,
  5.  * 901 San Antonio Road, Palo Alto, California, 94303, U.S.A.
  6.  * All rights reserved.
  7.  * 
  8.  * This software is the confidential and proprietary information
  9.  * of Sun Microsystems, Inc. ("Confidential Information").  You
  10.  * shall not disclose such Confidential Information and shall use
  11.  * it only in accordance with the terms of the license agreement
  12.  * you entered into with Sun.
  13.  */
  14. package java.awt;
  15.  
  16. /** 
  17.  * Defines the interface for classes that know how to layout Containers.
  18.  *
  19.  * @see Container
  20.  *
  21.  * @version    1.15, 07/01/98
  22.  * @author     Sami Shaio
  23.  * @author     Arthur van Hoff
  24.  */
  25. public interface LayoutManager {
  26.     /**
  27.      * Adds the specified component with the specified name to
  28.      * the layout.
  29.      * @param name the component name
  30.      * @param comp the component to be added
  31.      */
  32.     void addLayoutComponent(String name, Component comp);
  33.  
  34.     /**
  35.      * Removes the specified component from the layout.
  36.      * @param comp the component ot be removed
  37.      */
  38.     void removeLayoutComponent(Component comp);
  39.  
  40.     /**
  41.      * Calculates the preferred size dimensions for the specified 
  42.      * panel given the components in the specified parent container.
  43.      * @param parent the component to be laid out
  44.      *  
  45.      * @see #minimumLayoutSize
  46.      */
  47.     Dimension preferredLayoutSize(Container parent);
  48.  
  49.     /** 
  50.      * Calculates the minimum size dimensions for the specified 
  51.      * panel given the components in the specified parent container.
  52.      * @param parent the component to be laid out
  53.      * @see #preferredLayoutSize
  54.      */
  55.     Dimension minimumLayoutSize(Container parent);
  56.  
  57.     /** 
  58.      * Lays out the container in the specified panel.
  59.      * @param parent the component which needs to be laid out 
  60.      */
  61.     void layoutContainer(Container parent);
  62. }
  63.